package cn.iocoder.yudao.module.product.controller.admin.skuofferpricerelation.vo;

import cn.iocoder.yudao.module.product.dal.dataobject.sku.ProductSkuDO;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

@Schema(description = "管理后台 - sku与报价关系 Response VO")
@Data
@ExcelIgnoreUnannotated
public class SkuOfferPriceRelationRespVO {

    @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "31490")
    @ExcelProperty("id")
    private Long id;

    @Schema(description = "商品id", requiredMode = Schema.RequiredMode.REQUIRED, example = "32745")
    @ExcelProperty("商品id")
    private Long skuId;

    @Schema(description = "统一定价", example = "17442")
    @ExcelProperty("统一定价")
    private Integer price;

    @Schema(description = "退残价", example = "8251")
    @ExcelProperty("退残价")
    private Integer incompletePrice;

    @Schema(description = "退残价是否启用（false未启用，ture已启用）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("退残价是否启用（false未启用，ture已启用）")
    private Boolean enable;

    @Schema(description = "生效时间")
    @ExcelProperty("生效时间")
    private LocalDateTime effectiveTime;

    @Schema(description = "是否立即生效（false 未立即生效，true立即生效）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("是否立即生效（false未立即生效，true立即生效）")
    private Boolean effective;

    @Schema(description = "当前标识（0当前标识(使用)，1未使用,2往期）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("当前标识（0当前标识(使用)，1未使用,2往期）")
    private Integer currentMark;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "创建时间")
    private String name;

    @Schema(description = "属性数组")
    private List<ProductSkuDO.Property> properties;

}